<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Escape a identifier for insertion into a text field</title>
<link media="all" rel="stylesheet" type="text/css" href="styles/03e73060321a0a848018724a6c83de7f-theme-base.css" />
<link media="all" rel="stylesheet" type="text/css" href="styles/03e73060321a0a848018724a6c83de7f-theme-medium.css" />

 </head>
 <body class="docs"><div class="navbar navbar-fixed-top">
  <div class="navbar-inner clearfix">
    <ul class="nav" style="width: 100%">
      <li style="float: left;"><a href="function.pg-escape-bytea.html">« pg_escape_bytea</a></li>
      <li style="float: right;"><a href="function.pg-escape-literal.html">pg_escape_literal »</a></li>
    </ul>
  </div>
</div>
<div id="breadcrumbs" class="clearfix">
  <ul class="breadcrumbs-container">
    <li><a href="index.html">PHP Manual</a></li>
    <li><a href="ref.pgsql.html">PostgreSQL 函数</a></li>
    <li>Escape a identifier for insertion into a text field</li>
  </ul>
</div>
<div id="layout">
  <div id="layout-content"><div id="function.pg-escape-identifier" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">pg_escape_identifier</h1>
  <p class="verinfo">(PHP 5 &gt;= 5.4.4, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">pg_escape_identifier</span> &mdash; <span class="dc-title">
   Escape a identifier for insertion into a text field
  </span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.pg-escape-identifier-description">
  <h3 class="title">说明</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>pg_escape_identifier</strong></span>(<span class="methodparam"><span class="type"><a href="class.pgsql-connection.html" class="type PgSql\Connection">PgSql\Connection</a></span> <code class="parameter">$connection</code><span class="initializer"> = ?</span></span>, <span class="methodparam"><span class="type">string</span> <code class="parameter">$data</code></span>): <span class="type">string</span></div>

  <p class="para rdfs-comment">
   <span class="function"><strong>pg_escape_identifier()</strong></span> escapes a identifier
   (e.g. table, field names) for querying the database.  It returns an
   escaped identifier string for PostgreSQL
   server. <span class="function"><strong>pg_escape_identifier()</strong></span> adds double
   quotes before and after data. Users should not add double
   quotes. Use of this function is recommended for identifier
   parameters in query. For SQL literals (i.e. parameters except
   bytea), <span class="function"><a href="function.pg-escape-literal.html" class="function">pg_escape_literal()</a></span>
   or <span class="function"><a href="function.pg-escape-string.html" class="function">pg_escape_string()</a></span> must be used. For bytea
   type fields, <span class="function"><a href="function.pg-escape-bytea.html" class="function">pg_escape_bytea()</a></span> must be used
   instead.
  </p>
  <blockquote class="note"><p><strong class="note">注意</strong>: 
   <p class="para">
    This function has internal escape code and can also be used with
    PostgreSQL 8.4 or less.
    </p>
  </p></blockquote>
 </div>


<div class="refsect1 parameters" id="refsect1-function.pg-escape-identifier-parameters">
  <h3 class="title">参数</h3>
  <p class="para">
   <dl>
    
     <dt>
<code class="parameter">connection</code></dt>

     <dd>

      <p class="para">An <span class="classname"><a href="class.pgsql-connection.html" class="classname">PgSql\Connection</a></span> instance.
When <code class="parameter">connection</code> is unspecified, the default connection is used.
The default connection is the last connection made by <span class="function"><a href="function.pg-connect.html" class="function">pg_connect()</a></span>
or <span class="function"><a href="function.pg-pconnect.html" class="function">pg_pconnect()</a></span>.
<div class="warning"><strong class="warning">警告</strong><p class="simpara">As of PHP 8.1.0, using the default connection is deprecated.</p></div></p>
     </dd>

    
    
     <dt>
<code class="parameter">data</code></dt>

     <dd>

      <p class="para">
       A <span class="type">string</span> containing text to be escaped.
      </p>
     </dd>

    
   </dl>

  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.pg-escape-identifier-returnvalues">
  <h3 class="title">返回值</h3>
  <p class="para">
   A <span class="type">string</span> containing the escaped data.
  </p>
 </div>


 <div class="refsect1 changelog" id="refsect1-function.pg-escape-identifier-changelog">
  <h3 class="title">更新日志</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>版本</th>
      <th>说明</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
 <td>8.1.0</td>
 <td>
  现在 <code class="parameter">connection</code> 参数接受 <span class="classname"><a href="class.pgsql-connection.html" class="classname">PgSql\Connection</a></span>
  实例，之前接受 <a href="language.types.resource.html" class="link">资源(resource)</a>。
 </td>
</tr>

    </tbody>
   
  </table>

 </div>


 <div class="refsect1 examples" id="refsect1-function.pg-escape-identifier-examples">
  <h3 class="title">范例</h3>
  <p class="para">
   <div class="example" id="example-1899">
    <p><strong>示例 #1 <span class="function"><strong>pg_escape_identifier()</strong></span> example</strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php&nbsp;<br />&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Connect&nbsp;to&nbsp;the&nbsp;database<br />&nbsp;&nbsp;</span><span style="color: #0000BB">$dbconn&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">pg_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">'dbname=foo'</span><span style="color: #007700">);<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Escape&nbsp;the&nbsp;table&nbsp;name&nbsp;data<br />&nbsp;&nbsp;</span><span style="color: #0000BB">$escaped&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">pg_escape_identifier</span><span style="color: #007700">(</span><span style="color: #0000BB">$table_name</span><span style="color: #007700">);<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Select&nbsp;rows&nbsp;from&nbsp;$table_name<br />&nbsp;&nbsp;</span><span style="color: #0000BB">pg_query</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT&nbsp;*&nbsp;FROM&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">$escaped</span><span style="color: #007700">}</span><span style="color: #DD0000">;"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</code></div>
    </div>

   </div>
  </p>
 </div>

 
 <div class="refsect1 seealso" id="refsect1-function.pg-escape-identifier-seealso">
  <h3 class="title">参见</h3>
  <p class="para">
   <ul class="simplelist">
    <li class="member"><span class="function"><a href="function.pg-escape-literal.html" class="function" rel="rdfs-seeAlso">pg_escape_literal()</a> - Escape a literal for insertion into a text field</span></li>
    <li class="member"><span class="function"><a href="function.pg-escape-bytea.html" class="function" rel="rdfs-seeAlso">pg_escape_bytea()</a> - 转义 bytea 类型的二进制数据</span></li>
    <li class="member"><span class="function"><a href="function.pg-escape-string.html" class="function" rel="rdfs-seeAlso">pg_escape_string()</a> - 转义 text/char 类型的字符串</span></li>
   </ul>
  </p>
 </div>

</div></div></div></body></html>